package com.zqs.mapper;

import com.zqs.entity.Product;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface ProductMapper {

    /**
     * 根据cid和bid查询汽车列表
     * @param cid
     * @param bid
     * @return
     */
    @Select("select * from t_product where cid = #{cid} and bid = #{bid}")
    List<Product> findByCidAndBid(@Param("cid") Integer cid,
                                  @Param("bid") Integer bid);

    /**
     * 根据pid查该汽车详情
     * @param pid 汽车id
     * @return 返回汽车对象
     */
    @Select("select * from t_product where pid = #{pid}")
    Product findByPid(Integer pid);

    /**
     * 按汽车价格倒叙排列
     * @return 返回汽车列表
     */
    @Select("select * from t_product order by real_price DESC limit 0,10")
    List<Product> findAllByPriceDesc();

    /**
     * 按汽车价格正叙排列
     * @return 返回汽车列表
     */
    @Select("select * from t_product order by real_price ASC limit 0,10")
    List<Product> findAllByPriceAsc();

    /**
     * 按汽车创建时间倒叙排列
     * @return 返回汽车列表
     */
    @Select("select * from t_product order by created_time DESC limit 0,10")
    List<Product> findAllByTime();

    /**
     * 按汽车id正序排列
     * @return 返回汽车列表
     */
    @Select("select * from t_product limit 0,10")
    List<Product> findAll();

    @Select(value = "select * from t_product where title like CONCAT('%',#{title},'%')")
    List<Product> findByProductName(String title);
}
